<?php
//======================================================================================
//
// Function: Maintain WAMMP951
//
// Programmer: JKJ
// Date : 2024-11-02
//
// Copyright Reeft A/S (c) - 2024
//======================================================================================
// https://stackoverflow.com/questions/56062658/clicking-programmatically-on-the-arrows-of-html-inputs-type-number
//======================================================================================
// Get input
//======================================================================================
if (isset($_REQUEST["WXLIN"])) {
$input_WXLIN = $_REQUEST["WXLIN"];
} else {
$input_WXLIN = '';
}
if (isset($_REQUEST["WXART"])) {
$input_WXART = $_REQUEST["WXART"];
} else {
$input_WXART = 'AI6760201';
$input_WXART = '41329020300';
}
//======================================================================================
// Make line uppercase
//======================================================================================
$input_WXLIN = strtoupper( $input_WXLIN );
//======================================================================================
// General config
//======================================================================================
include "config/config.php";
//======================================================================================
// Check if user is logged in?
//======================================================================================
include "login_check.php";
//======================================================================================
// Get session variables
//======================================================================================
include "include/getsession.php";
//======================================================================================
// Set language
//======================================================================================
include "include/set_language.php";
//======================================================================================
// Set defaults
//======================================================================================
// $pk_reference = $_SESSION['session_dft_pk_reference'];
// $referenceCode = $_SESSION['session_dft_referencecode'];
// $referenceName = $_SESSION['session_dft_referencename'];
//======================================================================================
?>
<!DOCTYPE html>
<html lang="en">
<head>
<title><?php echo $datahub_text0001 ?></title>
<meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no">
<meta name="description" content="REEFTvisual - Stoptime">
<meta name="author" content="REEFT A/S">
<link rel="icon" href="images/favicon/favicon.ico">
<!-- Bootstrap / jQuery -->
<link href="css/bootstrap4.3.1/css/bootstrap.custom.min.css" rel="stylesheet">
<link href="css/bootstrap4.3.1/css/themes/bootstrap.custom.min.css" rel="stylesheet">
<link href="css/bootstrap4.3.1/css/normalize.css" rel="stylesheet" type="text/css">
<link href="css/sticky-footer.css" rel="stylesheet" type="text/css">
<!-- Custom styles for this template -->
<link href="css/custom.css" rel="stylesheet">
<link href="css/style.css" rel="stylesheet">
<script src="css/fontawesome6.5.1/js/all.min.js"></script>
<script src="css/fontawesome6.5.1/js/sharp-light.min.js"></script>
<script src="css/fontawesome6.5.1/js/sharp-regular.min.js"></script>
<script src="css/fontawesome6.5.1/js/sharp-solid.min.js"></script>
<script src="css/fontawesome6.5.1/js/sharp-thin.min.js"></script>
<link href="css/bootstrap_animation/css/animate4/animate.css" rel="stylesheet" type="text/css">
<!--<link href="javascript/chosen/chosen.css" rel="stylesheet" type="text/css">-->
<link href="javascript/jquery-ui/jquery-ui.min.css" rel="stylesheet" type="text/css"/>
<script src="javascript/jquery.js"></script>
<script src="css/bootstrap4.3.1/js/popper.js"></script>
<script src="css/bootstrap4.3.1/js/bootstrap.min.js"></script>
<script src="javascript/jquery-ui/jquery-ui.min.js"></script>
<script src="javascript/jquery.ui.touch-punch.min.js"></script>
<link href="javascript/bgrins-spectrum/spectrum.css" rel="stylesheet" type="text/css">
<script src="javascript/bgrins-spectrum/spectrum.js"></script>
<script src="javascript/moment.min.js"></script>
<script src="javascript/moment-with-locales.min.js"></script>
<script src="javascript/moment-duration-format.min.js"></script>
<script src="javascript/number_format/jquery.number.min.js"></script>
<script src="javascript/jquery.scrollTo.min.js"></script>
<link href="javascript/daatatables/media/css/jquery.dataTables.min.css" rel="stylesheet" type="text/css">
<link href="javascript/daatatables/media/css/fixedHeader.dataTables.min.css" rel="stylesheet" type="text/css">
<link href="javascript/daatatables/Buttons-1.4.2/css/buttons.dataTables.min.css" rel="stylesheet" type="text/css">
<script src="javascript/daatatables/media/js/jquery.dataTables.min.js"></script>
<script src="javascript/daatatables/media/js/dataTables.fixedHeader.min.js"></script>
<script src="javascript/daatatables/Buttons-1.4.2/js/dataTables.buttons.min.js"></script>
<script src="javascript/daatatables/Buttons-1.4.2/js/buttons.flash.min.js"></script>
<script src="javascript/daatatables/JSZip-2.5.0/jszip.min.js"></script>
<script src="javascript/daatatables/pdfmake-0.1.53/pdfmake.min.js"></script>
<script src="javascript/daatatables/pdfmake-0.1.53/vfs_fonts.js"></script>
<script src="javascript/daatatables/Buttons-1.4.2/js/buttons.html5.min.js"></script>
<script src="javascript/daatatables/Buttons-1.4.2/js/buttons.print.min.js"></script>
<script src="javascript/chosen/chosen.jquery.min.js" type="text/javascript"></script>
<script src="javascript/viewer-master/dist/viewer.min.js"></script>
<link href="javascript/viewer-master/dist/viewer.min.css" rel="stylesheet">
<script src="javascript/ajaxq/ajaxq.js"></script>
<link id="scrollUpTheme" rel="stylesheet" href="javascript/scrollup-master/dist/css/themes/image.css">
<script src="javascript/scrollup-master/dist/jquery.scrollUp.js"></script>
<script src="javascript/shortcut.js"></script>
<script src="javascript/_reeft_js/set_font_awesome_icon_type.js"></script>
<script src="javascript/_reeft_js/date_convert.js"></script>
<style>
.prodid-flow-icon-class:hover, .moa-list-icon-class:hover {
color:black;
background-color: #337AB7;
border-width:1px !important;
border-color:black !important;
}
.click-error-moa {
color:black;
background-color: HotPink;
border-width:1px !important;
border-color:black !important;
}
.click-highlight-moa {
color:black;
background-color: CornflowerBlue;
border-width:1px !important;
border-color:black !important;
}
.click-highlight-moa-icon {
color: CornflowerBlue;
}
.modal-body {
max-height: calc(100vh - 143px);
overflow-y: auto; }
.btn-custom-wide {
height:60px;
width:210px;
}
.modal-xxl {
max-width: 80%;
}
.modal-xl {
max-width: 50%;
}
.border-3 {
border-width:3px !important;
}
td .hover-img {
position:relative;
}
td .hover-img span {
position:absolute; left:-9999px; top:-9999px; z-index:9999;
}
td:hover .hover-img span {
top: 5px;
left:0px;
}
.chosen-container-single {
min-width: 100%;
}
</style>
<script language="JavaScript">
//=============================================================================
// Globals
//=============================================================================
var myCurrentRow;
var myGlobalRowData;
var myGlobalTableData;
var global_all_lines = '';
var global_all_workcenters = '';
var global_debug = 'N';
// Add allowed Y/N
var GLOBAL_ADD_ALLOWED = 'N';
// Delete allowed Y/N
var GLOBAL_DELETE_ALLOWED = 'N';
var jsonDataSave = {};
var DFT_DATE_DISPLAY_FORMAT = '<?php //echo $DFT_DATE_DISPLAY_FORMAT ?>';
var DFT_LANGUAGE = '<?php //echo $DFT_LANGUAGE ?>';
var GLOBAL_TOTALPAGESSTOPVALUE = 10;
// Save field
var save_WXLIN = '';
var save_WXPID = '';
$(function () {
$.scrollUp({
scrollName: 'scrollUp', // Element ID
//topDistance: '1800', // Distance from top before showing element (px)
//topSpeed: 300, // Speed back to top (ms)
scrollDistance: '300', // Distance from top before showing element (px)
scrollSpeed: 300, // Speed back to top (ms)
animation: 'fade', // Fade, slide, none
animationInSpeed: 200, // Animation in speed (ms)
animationOutSpeed: 200, // Animation out speed (ms)
scrollText: false, //'Scroll to top', // Text for element
activeOverlay: false, // Set CSS color to display scrollUp active point, e.g '#00FFFF'
});
});
//=============================================================================
// Get data
//=============================================================================
function getData()
{
if ( global_debug == 'Y' ) {
console.log("Start");
console.time("answer time");
console.timeLog("answer time");
}
$('#data-result').html('<?php echo $datahub_datatable_Processing ?>').addClass('text-center');
// Get the current search line
var input_WXLIN = $('#input-search-line').val();
var input_search_arg = $('#input-search-arg').val();
// If data is recieved for a line - show the "next prodid button"
if ( input_WXLIN != '' ) {
$('#show-from-next-prodid-to-enter-the-line').removeClass('d-none');
} else {
$('#show-from-next-prodid-to-enter-the-line').addClass('d-none');
}
// Get page data
myTotalRecordsFound = $('#input-myTotalRecordsFound').val();
myTotalPages = $('#input-myTotalPages').val();
myPageSize = $('#input-myPageSize').val();
myPageGoTo = $('#input-myPageGoTo').val();
myOffSet = $('#input-myOffSet').val();
myCurrentPageCounter = $('#input-myCurrentPageCounter').val();
let myButtonOffSetNumber = myPageGoTo;
if ( myButtonOffSetNumber <= 1 || myButtonOffSetNumber == '' ) {
myButtonOffSetNumber = 1
$('#page-prev-button').addClass('d-none');
} else {
//$('#page-prev-button').removeClass('d-none');
}
$('.pagination-badge-class').removeClass('badge-success').addClass('badge-dark');
var selectButtonLineID = 'select-page-button-id-' + myButtonOffSetNumber;
$('#' + selectButtonLineID).removeClass('badge-dark').addClass('badge-success');
//console.log( selectButtonLineID );
myPageSize = 5000;
var TAKT_LINES = $('#input-TAKT_LINES').val();
var WXART = $('#input-WXART').val();
// Create param list
parmData = 'WXLIN=' + input_WXLIN
+ '&TAKT_LINES =' + TAKT_LINES
+ '&WXART =' + WXART
+ '&myPageGoTo=' + myPageGoTo
+ '&myOffSet=' + myOffSet
+ '&myPageSize=' + myPageSize
+ '&search_arg=' + input_search_arg
;
$.ajax({
url: "hub_wa0362_maintain_get.php",
type: "GET",
data: parmData,
dataType: "json",
cache: false,
beforeSend: function( xhr ) {
}
})
.done(function( jsonData ) {
if ( global_debug == 'Y' ) {
console.log("After RPG call");
console.timeLog("answer time");
}
// Save jSon data
jsonDataSave = jsonData;
var returnCode = jsonData.header.returnCode;
var returnMsg = jsonData.header.returnMsg;
var entries_found = jsonData.header.entries_found;
var response_sec = jsonData.header.response_sec;
if ( $('#input-super-action-in-progress').val() != 'Y') {
$('#number-of-something').html( '<?php echo $datahub_text0055 ?> : ' + entries_found );
}
$('#input-super-action-in-progress').val('N');
// Place data in matrix
$.each( jsonData.data, function( index, object ){
var counter = object.counter;
var ACTIV = object.ACTIV;
var CMPNO = object.CMPNO;
var WXLIN = object.WXLIN;
var WXMOA = object.WXMOA;
var WXART = object.WXART;
var rpyClassNameInput = object.rpyClassNameInput;
var rpyClassNameButton = object.rpyClassNameButton;
//console.log(rpyClassNameInput, rpyClassNameButton )
$('.' + rpyClassNameInput).val(WXLIN + '|' + WXMOA);
$('.' + rpyClassNameButton).addClass('btn-success').removeClass('btn-primary');
});
// HTMLline02 += '</tbody>'
// + '</table>'
// Show yourself to the world, you little fvcker
// $('#data-result').html(HTMLline02);
if ( global_debug == 'Y' ) {
console.log("After processing json");
console.timeLog("answer time");
}
// Datatables
//setDataTables();
if ( global_debug == 'Y' ) {
console.log("After datatables");
console.timeLog("answer time");
}
//-----------------------------------------------------------------------
// Set font awesome icon type
//-----------------------------------------------------------------------
// Value is from config/config.php
var iconType = '<?php echo $DFT_SET_FONT_AWESOME_ICON_TYPE ?>';
setFontAwesomeIconType( iconType );
//-----------------------------------------------------------------------
if ( global_debug == 'Y' ) {
console.log("Done");
console.timeEnd("answer time");
}
//-----------------------------------------------------------------------
// Place cursor
//-----------------------------------------------------------------------
$('#input-search-arg').focus();
//-----------------------------------------------------------------------
// Is add allowed
//-----------------------------------------------------------------------
if ( GLOBAL_ADD_ALLOWED == 'Y' ) {
$('#add-button').removeClass('d-none');
} else {
$('#add-button').addClass('d-none');
}
//-----------------------------------------------------------------------
//-----------------------------------------------------------------------
// Get general takt info
//-----------------------------------------------------------------------
//getWorkCenters();
//-----------------------------------------------------------------------
// Show init screen, only if wanted
//-----------------------------------------------------------------------
// if ( $('#input-init-screen-shown').val() != 'Y' ) {
// showInitScreen();
// }
})
.always(function( jsonData ) {
//console.log('I am always..');
})
.fail(function( xhr, ajaxOptions, thrownError ) {
console.log('I am failed..');
console.log( xhr );
$('#data-result').html( '<b>Error retreiving data from the server...</b>' );
});
}
//=============================================================================
// Get TAKT info
//=============================================================================
function getWorkCenters()
{
var myLine = $('#input-search-line').val();
var input_WXLIN = $('#input-search-line').val();
myWorkCenterData = '';
//$('#data-result-takt-info').html('<?php echo $datahub_datatable_Processing ?>').addClass('text-center');
$('#data-result-workcenters-message').html('<?php echo $datahub_datatable_Processing ?>');
// Get the current search arg
var input_search_arg = $('#input-search-arg').val();
var input_lines = $('#input-TAKT_LINES').val();
// Create param list
parmData = 'input_lines=' + myLine
+ '&search_arg=' + input_search_arg
+ '&input_lines=' + input_lines
;
$.ajax({
url: "get_takt_info.php",
type: "GET",
data: parmData,
dataType: "json",
cache: false,
beforeSend: function( xhr ) {
}
})
.done(function( jsonData ) {
var rpyCMPNO = jsonData.header.rpyCMPNO;
var rpyCMPNO_Name = jsonData.header.rpyCMPNO_Name;
var rpyFile_name = jsonData.header.rpyFile_name
var rpyFile_description = jsonData.header.rpyFile_description
var rpyTableRecordsFound = jsonData.header.rpyTableRecordsFound
var TAKT_LINES_ALL = jsonData.header.TAKT_LINES_ALL;
var TAKT_LINES = jsonData.header.TAKT_LINES;
var DEFAULT_TAKT_LINES = jsonData.header.DEFAULT_TAKT_LINES;
var rpyTotal_lines = jsonData.header.total_lines;
var rpyTotal_workcenters = jsonData.header.total_workcenters;
var returnCode = jsonData.header.returnCode;
var returnMsg = jsonData.header.returnMsg;
var entries_found = jsonData.header.entries_found;
var response_sec = jsonData.header.response_sec;
$('#input-TAKT_LINES').val( TAKT_LINES_ALL );
$('#input-DEFAULT_TAKT_LINES').val( DEFAULT_TAKT_LINES );
// Set Company and file information
if ( rpyCMPNO != '' ) {
$('#data-hub-company-information').html( '<span title="' + rpyFile_name + ' - ' + rpyFile_description + '">' + rpyCMPNO_Name + ' (' + rpyCMPNO + ')' + '</span>' ).css('font-size','1.3em');
}
// Set some statictis
$('#number-of-takt-lines').html( '<?php echo $datahub_text0167 ?>: ' + rpyTotal_lines );
$('#number-of-workcenters').html( '<?php echo $datahub_text0168 ?>: ' + rpyTotal_workcenters );
// Show load time
$('#load-time-from-database').html( '(' + response_sec + ')');
$.each( jsonData.detail, function( index, object ){
var LINE = object.LINE;
myLine = LINE;
global_all_lines += LINE + '|';
if ( LINE == myLine )
{
var counter = object.counter;
var TAKT_LINES = object.TAKT_LINES ;
var REEFT_LINE = object.REEFT_LINE;
var LINENAME = object.LINENAME;
var FIRST_WC = object.FIRST_WC;
var FIRST_WORKCENTER = object.FIRST_WORKCENTER;
var LAST_WC = object.LAST_WC;
var LAST_WORKCENTER = object.LAST_WORKCENTER;
var WORKCENTERS = object.WORKCENTERS;
// Create workcenter line
myWorkCenterData = '<div class="row mb-2 mt-2 p-2 text-left border border-primary">'
+ '<div class="col-xl-1 col-lg-1 col-md-2 col-sm-2 col-xs-3">'
+ '<span class="font-weight-bold mr-2">' + LINENAME + '</span> : '
+ '</div>'
+ '<div class="col-xl-9 col-lg-9 col-md-8 col-sm-6 col-xs-7">'
;
// Collect all the workcenters for multi add/delete
allLine = '';
$.each(object.wc, function( i, wc){
var WC_COUNTER = wc.WC_COUNTER;
var WORKCENTER = wc.WORKCENTER;
allLine += WORKCENTER + '|';
global_all_workcenters += LINE + ';' + WORKCENTER + '|';
myWorkCenterData += ''
+ '<button type="button" class="btn btn-primary btn-smx mb-1 mr-1 class_input_button_all workcenter-class-' + LINE
+ ' '
+ 'button_' + LINE + '_' + WORKCENTER + '"'
+ ' '
+ 'onclick="selectWorkCenter('
+ '\''
+ LINE
+ '\','
+ '\''
+ WORKCENTER
+ '\''
+ ')">'
+ ' '
+ WORKCENTER
+ '</button>'
+ '<input type="text"'
+ ' '
+ 'style="max-width:65px"'
+ ' '
+ 'class="d-none class_input_super_all'
+ ' '
+ 'class_' + LINE + '_' + WORKCENTER
+ ' '
+ 'class_input_' + LINE
+ '"'
+ '>'
;
});
// Create workcenter line
// + '<xiv class="col-xl-1 col-lg-1 col-md-2 col-sm-2 col-xs-3">'
// + '<xiv class="col-xl-1 col-lg-1 col-md-2 col-sm-2 col-xs-2">'
myWorkCenterData += ''
+ '</div>'
+ '<div class="col-xl-2 col-lg-2 col-md-2 col-sm-4 col-xs-2">'
;
// Remove last |
if ( allLine.substr(0-1) == '|' ) {
allLine = allLine.slice(0,-1);
}
if ( global_all_lines.substr(0-1) == '|' ) {
global_all_lines = global_all_lines.slice(0,-1);
}
// Select all button
myWorkCenterData += ''
+ '<button type="button" class="btn btn-dark btn-sm mb-1 mr-1 workcenter-class'
+ ' '
+ 'button_' + LINE + '_' + 'ALL' + '"'
+ ' '
+ 'onclick="selectAllWorkCenter('
+ '\''
+ LINE
+ '\','
+ '\''
+ allLine
+ '\''
+ ')">'
+ ' '
+ '<?php echo $datahub_button_select ?>'
+ '</button>'
;
// De-select all button
myWorkCenterData += ''
+ '<button type="button" class="btn btn-danger btn-sm mb-1 mr-1 workcenter-class'
+ ' '
+ 'button_' + LINE + '_' + 'ALL' + '"'
+ ' '
+ 'onclick="deSelectAllWorkCenter('
+ '\''
+ LINE
+ '\','
+ '\''
+ allLine
+ '\''
+ ')">'
+ ' '
+ '<?php echo $datahub_button_de_select ?>'
+ '</button>'
;
// Create "the end"
$('#data-result-workcenters').append( '</div></div>' );
$('#data-result-workcenters').append( myWorkCenterData );
}
});
if ( global_all_workcenters.substr(0-1) == '|' ) {
global_all_workcenters = global_all_workcenters.slice(0,-1);
}
// Select all super button
superWorkCenterDataADD = ''
+ '<button type="button" class="btn btn-success btn-smX mb-1 mr-1 workcenter-class'
+ ' '
+ 'button_ALL' + '"'
+ ' '
+ 'onclick="superSelectAllWorkCenter('
+ '\''
+ global_all_lines
+ '\','
+ '\''
+ global_all_workcenters
+ '\''
+ ')">'
+ ' '
+ '<?php echo $datahub_button_super_select ?>'
+ '</button>'
;
// De-select all super button
superWorkCenterDataDELETE = ''
+ '<button type="button" class="btn btn-danger btn-smX mb-1 mr-1 workcenter-class'
+ ' '
+ 'button_ALL' + '"'
+ ' '
+ 'onclick="superDeSelectAllWorkCenter('
+ '\''
+ global_all_lines
+ '\','
+ '\''
+ global_all_workcenters
+ '\''
+ ')">'
+ ' '
+ '<?php echo $datahub_button_super_de_select ?>'
+ '</button>'
;
// Show super buttons
$('#super-button-add').html(superWorkCenterDataADD);
$('#super-button-del').html(superWorkCenterDataDELETE);
console.log(global_all_lines, global_all_workcenters);
// Set marker to select a workcenter
// if ( entries_found > 0 ) {
// myWorkCenterData += '<span id="workcenter-message"><?php echo $datahub_text0136 ?></span> <span id="workcenter-message-help-icon" onclick="highlightMOAicons()"><i class="fa-solid fa-circle-info text-dark"></i></span>';
// $('.moa-list-icon-class').removeClass('d-none');
// $('#data-result-workcenters').removeClass('border-danger').addClass('border-primary');
// } else {
// myWorkCenterData = '<?php echo $datahub_text0137 ?>';
// $('.moa-list-icon-class').addClass('d-none');
// $('#data-result-workcenters').removeClass('border-primary').addClass('border-danger');
// }
// Remove info message
$('#data-result-workcenters-message').html('');
//-----------------------------------------------------------------------
// If no workcenters found - hide Show MOA list icon
//-----------------------------------------------------------------------
if ( entries_found == 0 ) {
} else {
}
//-----------------------------------------------------------------------
// Set font awesome icon type
//-----------------------------------------------------------------------
// Value is from config/config.php
var iconType = '<?php echo $DFT_SET_FONT_AWESOME_ICON_TYPE ?>';
setFontAwesomeIconType( iconType );
//-----------------------------------------------------------------------
//-----------------------------------------------------------------------
// Get data
//-----------------------------------------------------------------------
getData();
})
.always(function( jsonData ) {
//console.log('I am always..');
})
.fail(function( xhr, ajaxOptions, thrownError ) {
console.log('I am failed..');
console.log( xhr );
$('#data-result').html( '<b>Error retreiving data from the server...</b>' );
});
}
//=============================================================================
// Select work center
//=============================================================================
function selectWorkCenter( myLine, myWC )
{
var myButtonClass = 'button_' + myLine + '_' + myWC;
var myInputClass = 'class_' + myLine + '_' + myWC;
if ( $('.' + myInputClass).val() == '' ) {
$('#input-mode').val( '*add' );
$('.' + myInputClass).val( myLine + '|' + myWC );
$('.' + myButtonClass ).removeClass('btn-primary').addClass('btn-success');
} else {
$('#input-mode').val( '*delete' );
$('.' + myInputClass).val('');
$('.' + myButtonClass ).removeClass('btn-success').addClass('btn-primary');
}
// $('#' + inputWC).removeClass('btn-primary').addClass('btn-success');
// Move to general input fields
$('#input-WXLIN').val( myLine )
$('#input-WXMOA').val( myWC )
$('#input-WXART').val( '<?php echo $input_WXART ?>' )
dataSave();
}
//=============================================================================
// Select all work centers
//=============================================================================
function selectAllWorkCenter( myLine, myWC_ALL )
{
var myButtonClass = 'workcenter-class-' + myLine;
// Reset all
$('.class_input_' + myLine).val('');
var ary_wrk = myWC_ALL.split('|');
for (let i = 0; i < ary_wrk.length; i++)
{
console.log(ary_wrk[i]);
myWC = ary_wrk[i];
var myInputClass = 'class_' + myLine + '_' + myWC;
if ( $('.' + myInputClass).val() == '' ) {
$('#input-mode').val( '*add' );
$('.' + myInputClass).val( myLine + '|' + myWC );
$('.' + myButtonClass ).removeClass('btn-primary').addClass('btn-success');
} else {
// $('#input-mode').val( '*delete' );
// $('.' + myInputClass).val('');
// $('.' + myButtonClass ).removeClass('btn-success').addClass('btn-primary');
}
}
// $('#' + inputWC).removeClass('btn-primary').addClass('btn-success');
// Move to general input fields
$('#input-WXLIN').val( myLine )
$('#input-WXMOA').val( '' )
$('#input-WXART').val( '<?php echo $input_WXART ?>' )
$('#input-ALL_WORKCENTERS').val( myWC_ALL )
dataSave();
}
//=============================================================================
// De-select all work centers
//=============================================================================
function deSelectAllWorkCenter( myLine, myWC_ALL )
{
var myButtonClass = 'workcenter-class-' + myLine;
// Reset all
$('.class_input_' + myLine).val('');
var ary_wrk = myWC_ALL.split('|');
for (let i = 0; i < ary_wrk.length; i++)
{
console.log(ary_wrk[i]);
myWC = ary_wrk[i];
var myInputClass = 'class_' + myLine + '_' + myWC;
if ( $('.' + myInputClass).val() == '' ) {
$('#input-mode').val( '*multi_delete' );
$('.' + myInputClass).val( myLine + '|' + myWC );
$('.' + myButtonClass ).removeClass('btn-success').addClass('btn-primary');
}
}
// Move to general input fields
$('#input-WXLIN').val( myLine )
$('#input-WXMOA').val( '' )
$('#input-WXART').val( '<?php echo $input_WXART ?>' )
$('#input-ALL_WORKCENTERS').val( myWC_ALL )
dataSave();
}
//=============================================================================
// Super select all work centers
//=============================================================================
function superSelectAllWorkCenter( myLine_ALL, myWC_ALL )
{
// Reset all
$('.class_input_super_all').val('');
$('.class_input_button_all').removeClass('btn-primary').addClass('btn-success');;
$('#input-mode').val( '*super_add' );
// Move to general input fields
$('#input-WXLIN').val( myLine_ALL )
$('#input-WXMOA').val( '' )
$('#input-WXART').val( '<?php echo $input_WXART ?>' )
$('#input-ALL_WORKCENTERS').val( myWC_ALL )
dataSave();
}
//=============================================================================
// Super de-select all work centers
//=============================================================================
function superDeSelectAllWorkCenter( myLine_ALL, myWC_ALL )
{
// Reset all
$('.class_input_super_all').val('');
$('.class_input_button_all').removeClass('btn-success').addClass('btn-primary');;
$('#input-mode').val( '*super_delete' );
// Move to general input fields
$('#input-WXLIN').val( myLine_ALL )
$('#input-WXMOA').val( '' )
$('#input-WXART').val( '<?php echo $input_WXART ?>' )
$('#input-ALL_WORKCENTERS').val( myWC_ALL )
dataSave();
}
//=============================================================================
// Save
//=============================================================================
function dataSave()
{
// Reset modal message
resetModalMessage();
// // Check content of fields
// if ( $('#modal-input-WXPID').val() == '' ) {
// $('#modal-message').addClass('border-bottom').html( '<?php echo $datahub_error0023 ?>' );
// $('#modal-save-button').addClass('disabled').prop("disabled", true);
// $('#modal-input-WXPID').focus();
// return false;
// }
// if ( $('#modal-input-WXLIN').val() == '' ) {
// $('#modal-message').addClass(' border-bottom').html( '<?php echo $datahub_error0006 ?>' );
// $('#modal-save-button').addClass('disabled').prop("disabled", true);
// $('#modal-input-WXLIN').focus();
// return false;
// }
// if ( $('#modal-input-WXDTE').val() == '' ) {
// $('#modal-message').addClass(' border-bottom').html( '<?php echo $datahub_error0019 ?>' );
// $('#modal-save-button').addClass('disabled').prop("disabled", true);
// $('#modal-input-WXDTE').focus();
// return false;
// }
var mode = $('#input-mode').val();
var WXART = $('#input-WXART').val();
//===============================================================================
// Make array and json
var myData = $('#dataForm').find('input, select').serializeArray();
var result = JSON.stringify(myData);
var parmData = 'data=' + result
+ '&mode=' + mode
;
// console.log(result);
// console.table(myData);
// console.log(parmData);
// return;
$.ajax({
url: "hub_wa0362_maintain_save.php",
type: "GET",
data: parmData,
dataType: "json",
cache: false,
})
.done(function( jsonData ) {
var rpyNumberInserted = jsonData.header.rpyNumberInserted;
var rpyNumberDeleted = jsonData.header.rpyNumberDeleted;
var response_sec = jsonData.header.response_sec;
$('#load-time-from-database').html( '(' + response_sec + ')');
$('#number-of-something').html( ' ');
if ( rpyNumberInserted != '0' ) {
$('#number-of-something').html( '<?php echo $datahub_text0169 ?> : ' + rpyNumberInserted );
}
if ( rpyNumberDeleted != '0' ) {
$('#number-of-something').html( '<?php echo $datahub_text0170 ?> : ' + rpyNumberDeleted );
}
// Reset "all" field
$('#input-ALL_WORKCENTERS').val('')
// Reset fields, just in case
var mode = $('#input-mode').val();
var WXLIN = $('#input-WXLIN').val();
if ( mode == '*multi_delete' ) {
$('.class_input_' + WXLIN).val('');
}
// If super add - reload data
if ( mode == '*super_add' ) {
$('#input-super-action-in-progress').val('Y');
getData();
}
})
.always(function( jsonData ) {
})
.fail(function( xhr, ajaxOptions, thrownError ) {
console.log('I am failed..');
console.log( xhr );
});
}
//=============================================================================
// Show WXART search
//=============================================================================
function searchWXARTshow()
{
$('#current-input-WXART-wrapper').addClass('d-none');
$('#current-input-WXART-search-wrapper').removeClass('d-none');
$('#current-input-WXART-search').trigger('focus');
// Swithc incons
$('#search-icon-01').addClass('d-none');
$('#search-icon-02').removeClass('d-none');
}
//=============================================================================
// Hide WXART search
//=============================================================================
function searchWXARThide()
{
$('#current-input-WXART-search-wrapper').addClass('d-none');
$('#current-input-WXART-wrapper').removeClass('d-none');
// Swithc incons
$('#search-icon-02').addClass('d-none');
$('#search-icon-01').removeClass('d-none');
}
//=============================================================================
// Check if userid exists
//=============================================================================
function checkDataExists()
{
var WXPID = $('#modal-input-WXPID').val();
// If update, then the "orginal" code is ok
if ( $('#input-mode').val() == '*update' ) {
if ( WXPID == save_WXPID ) {
return;
}
}
var parmData = 'WXART=' + WXPID
;
$.ajax({
url: "hub_wa0357_maintain_get.php",
type: "GET",
data: parmData,
dataType: "json",
cache: false,
})
.done(function( jsonData ) {
var returnCode = jsonData.header.returnCode;
var returnMsg = jsonData.header.returnMsg;
var entries_found = jsonData.header.entries_found;
if ( returnCode == '50') {
$('#modal-message').addClass(' border-bottom').html( '<?php echo $datahub_error0080 ?>' );
$('#modal-save-button').addClass('disabled').prop("disabled", true);
$('#modal-input-WXPID').focus();
$('#modal-input-WXDTE').val( '' );
return false;
} else {
DESCP = jsonData.detail[0].DESCP
$('#modal-input-WXDTE').val( DESCP );
}
// Reset modal message
resetModalMessage();
})
.always(function( jsonData ) {
})
.fail(function( xhr, ajaxOptions, thrownError ) {
console.log('I am failed..');
console.log( xhr );
});
}
//=============================================================================
// Log off
//=============================================================================
function signoff()
{
window.location.href = "logout.php";
}
//=============================================================================
// Load page
//=============================================================================
function loadPage(url, p1, p2, p3)
{
window.location.href = url;
}
//=============================================================================
// Reset modal message
//=============================================================================
function resetModalMessage() {
// Reset
//$('#modal-message').removeClass('p-2 font-weight-bold border border-danger rounded bg-light').html( ' ' );
$('#modal-message').removeClass('border-bottom').html( ' ' );
$('#modal-save-button').removeClass('disabled').prop("disabled", false);
}
//=============================================================================
// Full screen popup
//=============================================================================
function popUpFull( url, p1, p2, p3 )
{
var winname = 'win_' + url;
params = 'width='+screen.width;
params += ', height='+screen.height;
params += ', top=0, left=0'
params += ', fullscreen=yes';
params += ',scrollbars=1';
overview_win = window.open(url,winname, params);
if (window.focus) {overview_win.focus()}
return false;
}
//=============================================================================
// screen popup - center
//=============================================================================
function popUpCenter(url, p1, p2, p3)
{
var v1_w = screen.availWidth;
var v1_h = screen.availHeight;
if ( parseInt(v1_w) > 1800 ) {
v1_w = 1800;
v1_h = v1_h - 200;
v1_center = v1_w/0.8;
}
// Center popup as good as possible
var left = (screen.width - v1_w) / 2;
var top = (screen.height - v1_h) / 4;
var winname = 'win_' + url;
params = 'width='+v1_w;
params += ', height='+v1_h;
params += ', top=' + top + ', left=' + left;
params += ', fullscreen=yes';
params += ',scrollbars=1';
overview_win = window.open(url,winname, params);
if (window.focus) {overview_win.focus()}
return false;
}
//=============================================================================
// screen popup - center - bigger
//=============================================================================
function popUpCenterBig(url, p1, p2, p3)
{
var v1_w = screen.availWidth;
var v1_h = screen.availHeight;
// Get 25%
v1_w_pct = v1_w * 0.25;
v1_w_new = v1_w - v1_w_pct;
if ( v1_w_new < 1 ) {
v1_w_new = 1800;
}
v1_w = v1_w_new;
v1_h = v1_h - 200;
v1_center = v1_w/0.8;
// Center popup as good as possible
var left = (screen.width - v1_w) / 2;
var top = (screen.height - v1_h) / 4;
var winname = 'win_' + url;
params = 'width='+v1_w;
params += ', height='+v1_h;
params += ', top=' + top + ', left=' + left;
params += ', fullscreen=yes';
params += ',scrollbars=1';
overview_win = window.open(url,winname, params);
if (window.focus) {overview_win.focus()}
return false;
}
//=============================================================================
// Popup top
//=============================================================================
function popUpTop(url, p1, p2, p3)
{
var winname = 'win_' + url;
w = 650;
h = 750;
params = 'width='+w;
params += ', height='+h;
params += ', top=0, left=0'
params += ', fullscreen=no';
params += ',scrollbars=1';
overview_win = window.open(url,winname, params);
if (window.focus) {overview_win.focus()}
return false;
}
//=============================================================================
// Scroll to something
//=============================================================================
function scrollToSomething( target )
{
thisID = '#' + target;
$.scrollTo( thisID, 1000);
}
//=============================================================================
// Set clock
//=============================================================================
function updateClock() {
var currentTime = moment().format('YYYY-MM-DD HH:mm:ss');
currentTime = REEFT_format_date( currentTime, DFT_DATE_DISPLAY_FORMAT )
$('#current-time').html( currentTime );
}
//=============================================================================
// jQuery - Ready
//=============================================================================
$(document).ready(function()
{
// Get me some data
getWorkCenters();
$('#input-mode').val('*add');
$('#input-WXART').val( '<?php echo $input_WXART ?>' )
$('#current-input-WXART').html( '<?php echo $input_WXART ?>' )
$('#input-super-action-in-progress').val('N');
//-----------------------------------------------------------------------
// Start the clock
//-----------------------------------------------------------------------
updateClock();
setInterval(function() {
updateClock();
}, 1000);
//-----------------------------------------------------------------------
//-----------------------------------------------------------------------
// Set font awesome icon type
//-----------------------------------------------------------------------
// Value is from config/config.php
var iconType = '<?php echo $DFT_SET_FONT_AWESOME_ICON_TYPE ?>';
setFontAwesomeIconType( iconType );
//-----------------------------------------------------------------------
//-----------------------------------------------------------------------
// Delay keyup checker
//-----------------------------------------------------------------------
var delay = (function () {
var timer = 0;
return function (callback, ms) {
clearTimeout(timer);
timer = setTimeout(callback, ms);
};
})()
let $filter01 = $('#modal-input-WXPID');
$filter01.on('keyup', function () {
delay(function () {
var inputValue = $('#modal-input-WXPID').val();
if ( inputValue != '') {
console.log('this will hit, once user has not typed for 1 second ' + inputValue );
checkDataExists();
}
}, 0800);
});
//-----------------------------------------------------------------------
// Set short cuts
//-----------------------------------------------------------------------
// If add d-none class, do not add shortcut
if ( GLOBAL_ADD_ALLOWED == 'Y' ) {
shortcut.add("Alt+F6",function() {
$('#add-button').click();
});
}
// Show search
shortcut.add("F2",function() {
$('#search-icon-01').click();
});
// Hide search
shortcut.add("Alt+F2",function() {
$('#search-icon-02').click();
});
});
// -->
</script>
</head>
<body>
<div class="container-fluid mt-2 pl-3 pr-3">
<input type="text" class="d-none" id="input-mode">
<input type="text" class="d-none" id="input-TAKT_LINES" size="50">
<input type="text" class="d-none" id="input-DEFAULT_TAKT_LINES" size="50">
<input type="text" class="d-none" id="input-super-action-in-progress">
<input type="text" class="d-none" id="input-show-deleted" >
<input type="text" class="d-none" id="input-search-line">
<input type="text" class="d-none" id="input-search-wc">
<input type="text" class="d-none" id="input-show-next-prodid">
<input type="text" class="d-none" id="input-init-screen-shown">
<input type="text" class="d-none" id="input-myPageGoTo">
<input type="text" class="d-none" id="input-myCurrentPageCounter">
<input type="text" class="d-none" id="input-saveMyCurrentPageCounter">
<input type="text" class="d-none" id="input-saveMyDirection">
<input type="text" class="d-none" id="input-myOffSet">
<input type="text" class="d-none" id="input-myTotalRecordsFound">
<input type="text" class="d-none" id="input-myTotalPages">
<input type="text" class="d-none" id="input-myPageSize">
<input type="text" class="d-none" id="input-myBuildPageButtonsFirstTime">
<form name="dataForm" id="dataForm">
<input type="text" class="d-none" id="input-WXLIN" name="input-WXLIN" size="50">
<input type="text" class="d-none" id="input-WXMOA" name="input-WXMOA">
<input type="text" class="d-none" id="input-WXART" name="input-WXART">
<input type="text" class="d-none" id="input-ALL_WORKCENTERS" name="input-ALL_WORKCENTERS" size="100">
</form>
<div class="row">
<div class="col-2">
<img src="images/customer-logo.png" alt="Customer Logo">
</div>
<div class="col-8 text-center <?php echo $DFT_CLOCK_SIZE ?>">
<i class="font-awesome-pseudo-class fa-thin fa-clock"></i> <span id="current-time"><?php echo date('d-m-Y h:i:s') ?></span>
</div>
<div class="col-2 text-right">
<div id="button-exit-button" class="btn btn-primary mb-1" onclick="loadPage('menu_main.php','','','')" title="<?php echo $datahub_go_to_my_dear_home ?>"><i class="font-awesome-pseudo-class fa-2x fa-thin fa-home"></i></div>
<div class="d-none">
<div class="btn btn-primary mb-1 d-none d-xl-inline-block" onclick="loadPage('menu_main.php','','','')" title="<?php echo $datahub_go_to_my_dear_home_03 ?>"><i class="font-awesome-pseudo-class fa-2x fa-thin fa-fort"></i></div>
<div class="btn btn-danger mb-1 d-none d-lg-inline-block" onclick="signoff()" title="<?php echo $datahub_go_to_my_dear_home_04 ?>"><i class="font-awesome-pseudo-class fa-thin fa-2x fa-right-from-bracket"></i></div>
</div>
</div>
</div>
<div class="row">
<div class="col-12 text-center">
<div id="data-hub-company-information"></div>
</div>
</div>
<div class="card mt-2">
<div class="card-header text-muted">
<div class="row mt-2">
<div class="col-4 h4">
<i class="font-awesome-pseudo-class fa-thin fa-eye"></i> <?php echo "$datahub_text0166a"; ?>
</div>
<div class="col-4 h4 text-center">
<div class="row">
<div class="col-11 order-first">
<span id="current-input-WXART-wrapper" class="Xd-none"><span id="current-input-WXART" class="h3 font-weight-bold"></span></span>
<span id="current-input-WXART-search-wrapper" class="d-none"><input id="current-input-WXART-search" placeholder="<?php echo $datahub_datatable_Search_text ?>" class="form-control w-100"></span>
</div>
<div class="col-1">
<span onclick="searchWXARTshow()" title="F2=Show search" id="search-icon-01" style="cursor:pointer"><i class="fa-light fa-magnifying-glass"></i></span>
<span onclick="searchWXARThide()" title="Alt+F2=Hide search" id="search-icon-02" class="d-none" style="cursor:pointer"><i class="fa-light fa-magnifying-glass-minus"></i></span>
</div>
</div>
</div>
<div class="col-4 text-right">
<div id="number-of-takt-lines">number-of-takt-lines</div>
<div id="number-of-workcenters">number-of-workcenters</div>
<div id="number-of-something"> </div>
</div>
</div>
</div>
<div class="card-body" id="card-body-id">
<!-- Message if screen is not wide enough -->
<div class="container-fluid mt-2 mb-4 d-block d-lg-none">
<div id="general-message-top" class="border border-danger rounded p-2 text-danger font-weight-boldx"><?php echo $datahub_error0040a ?></div>
</div>
<!-- Message if screen is not wide enough -->
<div class="text-center" id="data-result-workcenters-message"></div>
<!-- Super buttons start -->
<div id="data-result-wrapper-1" class="">
<div class="row mb-2">
<div class="col-12 text-right">
<span id="super-button-add"></span>
<span id="super-button-del"></span>
</div>
</div>
</div>
<!-- Super buttons end -->
<!-- Work centers start -->
<div id="data-result-wrapper-1" class="">
<div class="row mb-4">
<div class="col-12 text-left">
<div class="text-left" id="data-result-workcenters"></div>
</div>
</div>
</div>
<!-- Work centers end -->
<div class="row">
<div class="col text-right">
<small><div id="load-time-from-database"></div></small>
</div>
</div>
</div>
</div>
</div>
<!-- Set footer -->
<?php
include "include/footer.php";
?>
<!-- Set footer -->
<!-- ========================================================================== -->
<!-- M O D A L S -->
<!-- ========================================================================== -->
</body>
</html>